package com.tianlan.blog.service;

import java.util.List;

import com.tianlan.blog.entity.SysResource;

public interface SysResourceService {
	
	/**
	 * 添加权限资源
	 * @param resource
	 * @return boolean
	 */
	boolean createResource(SysResource resource);
	
	/**
	 * 修改权限资源
	 * @param resource
	 * @return boolean
	 */
	boolean updateResource(SysResource resource);
	
	/**
	 * 删除权限资源
	 * @param resourceId
	 * @return boolean
	 */
	boolean deleteResource(Integer resourceId);
	
	/**
	 * 根据父Id查询列表-组合
	 * @param parentId
	 * @return List<SysResource>
	 */
	List<SysResource> queryResourceByParentId(Integer parentId);
	
	/**
     * 根据角色ID查询菜单-组合
     * @param roleId 角色主键
     * @param status 状态(0：禁用；1：启用)
     * @return List<SysResource>
     */
    List<SysResource> queryResourceByRoleId(Integer roleId);
	
    /**
     * 根据用户ID查询菜单-组合
     * @param userId
     * @return List<SysResource>
     */
	List<SysResource> queryResourceByUserId(Integer userId);
	
	/**
	 * 根据用户Id查询列表-组合
	 * @param userId
	 * @return List<String>
	 */
	List<String> queryResourceListByUserId(Integer userId);
	
	long checkResourceKey(SysResource resource);
}
